<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

</body>
<script>
    // 全局变量/方法 太多 => 缺点:占内存
    // var a = 10;
    // function addA() {
    //     a++;
    //     console.log(a);
    //     return a;
    // }
    // var b = 20;
    // function addA() {
    //     b++;
    //     console.log(b);
    //     return b;
    // }

    // 放到函数中 变为局部变量/函数  => 缺点: 函数外无法使用函数内的变量和方法
    // function fn() {
    //     var a = 10;
    //     function addA() {
    //         a++;
    //         console.log(a);
    //         return a;
    //     }
    //     var b = 20;
    //     function addA() {
    //         b++;
    //         console.log(b);
    //         return b;
    //     }

    // }


    /* function fn() {
        var a = 10;
        function addA() {
            a++;
            console.log(a);
            return a;
        }

        var b = 20;
        function addB() {
            b++;
            console.log(b);
            return b;
        }
        return {
            addA,
            addB,
        }
    }

    var obj = fn();
    console.log(obj);

    obj.addA();
    obj.addA();
    obj.addA();
    obj.addA();

    obj.addB();
    obj.addB();
    obj.addB();
    obj.addB();
    obj.addB();
 */


    /* var result = (function (arg) {
        var a = 10;
        function addA() {
            a++;
            console.log(a);
            return a;
        }

        var b = 20;
        function addB() {
            b++;
            console.log(b);
            return b;
        }
        return {
            addA,
            addB,
        }
    })(window);

    console.log(result);
 */

</script>

</html>